1. Field of the Invention
This invention relates to computer systems, and more particularly, to copying and initializing a block of memory of the computer system.
2. Description of the Relevant Art
In computing systems, a physical move of data from one location of memory to another location of memory may better suit execution of application(s) or other aspects of system operation. Some reasons for performing such a relocation may include a change in resources such as failing hardware components, hot add/removal of hardware components where the components are added/removed while applications are running, and change in availability of hardware resources due to power management techniques. Also, optimizing load balances is another reason for wanting a relocation benefit.
When multiple data entities, such as a 1-byte, 2-byte, or 4-byte entity, needs to be relocated in memory, each entity must be moved with an instruction. The entire move may require several instructions. This may cause the execution of application(s) that need the data to slow down due to waiting for the several instructions of the data move to complete before the application(s) may continue.
The same situation may occur for data entities that may need to be initialized to a predetermined value such as zero. While each data entity is initialized by a single instruction, application(s) may need to wait and, therefore, performance suffers.
In view of the above, an efficient method for achieving copying and initializing a block of memory is desired.